package org.tissou.server.Base;

import org.tissou.server.Utils.InterfaceMySQL;
import org.tissou.client.Services.MonException;

import java.util.List;
import java.util.ArrayList;
import java.util.logging.Logger;
import java.sql.ResultSet;
import java.sql.SQLException;

/**
 * Created by IntelliJ IDEA.
 * User: Claire
 * Date: 12-Jan-2009
 * Time: 19:21:29
 * To change this template use File | Settings | File Templates.
 */
public class Monnaie_Ensemble {
  List<Monnaie> Liste = new ArrayList<Monnaie>();

  private static final Logger LOG = Logger.getLogger(Monnaie_Ensemble.class.getName());

  private Monnaie_Ensemble(List<Monnaie> listemonnaie){
    Liste = listemonnaie;
  }

  public static Monnaie_Ensemble ChargerEnsembleMonnaies(){
    return new Monnaie_Ensemble(Charger_Monnaies());
  }

  private static List<Monnaie> Charger_Monnaies(){
    List<Monnaie> Chargement = new ArrayList<Monnaie>();
    ResultSet result = null;
    try {
      result = InterfaceMySQL.getInstance().RecupererDonnees(
          String.format("SELECT DISTINCT(Monnaie) FROM Comptes"));
      while(result.next()){
        String NomMonnaie = result.getString(1);
        LOG.info(NomMonnaie);
        Chargement.add(Monnaie.ChargerMonnaie(NomMonnaie));
      }
    } catch (SQLException e) {
      throw new MonException("Impossible de charger un proprietaire",e);
    }
    return Chargement;
  }

  public Monnaie ObtenirMonnaie (String nom){
    for (Monnaie monnaie : this.Liste){
      if (monnaie.getNomMonnaie().equals(nom)){
        return monnaie;
      }
    }
    return null;
  }

  public List<Monnaie> getListe() {
    return Liste;
  }
}
